﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace NutriLeaf.Web.Core.Pregnancy
{
    public interface IPregnancy
    {
        void StartPregnancy(int userId, DateTime startDate, DateTime endDate, string description, string metadata, ref Model.NutriLeafDBEntities context);

        void Remove(int pregnancyId, ref Model.NutriLeafDBEntities context);

        void Update(Model.Pregnancy pregnancy, ref Model.NutriLeafDBEntities context);

        void UpdatePregnancyWeek(int pregnancyId, int weekId, ref Model.NutriLeafDBEntities context);

        void IncrementPregnancyWeek(int pregnancyId, ref Model.NutriLeafDBEntities context);

        int GetCurrentPregnancyWeek(int pregnancyId, ref Model.NutriLeafDBEntities context);

        int GetCurrentDayCount(int pregnancyId, ref Model.NutriLeafDBEntities context);

        Model.Pregnancy GetRecentPregnancyByUser(int userId, ref Model.NutriLeafDBEntities context);

        List<Model.Pregnancy> GetAllPregnanyByUser(int userId, ref Model.NutriLeafDBEntities context);

        Model.Pregnancy GetPregnancyById(int id, ref Model.NutriLeafDBEntities context);

    }
}